package com.moji.entity.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.moji.common.base.PageEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.util.Date;

@Data
public class QueryOrderDto extends PageEntity {

    @ApiModelProperty(value = "订单编码")
    private String orderCode;
    @ApiModelProperty(value = "订单编码")
    private String orderName;
    @ApiModelProperty(value = "用户编码")
    private String userCode;

    @ApiModelProperty(value = "手机号")
    private String mobile;

    @ApiModelProperty(value = "用户名称")
    private String userName;
    @ApiModelProperty(value = "订单金额")
    private String orderAmount;

    @ApiModelProperty(value = "账户 0-个人账户 1-企业账户")
    private String accountType;

    @ApiModelProperty(value = "订单类型 0-数据产品 1-其它产品")
    private String orderType;

    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "订单时间")
    private Date orderTime;

    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "支付时间")
    private Date payTime;

    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "下单时间_开始")
    private Date orderTimeStart;

    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "下单时间_结束")
    private Date orderTimeEnd;

    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "支付时间_开始")
    private Date payTimeStart;

    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "支付时间_开始")
    private Date payTimeEnd;

    @ApiModelProperty(value = "支付方式 0-支付宝 1-微信 2-对公支付  3-免费")
    private String payType;

    @ApiModelProperty(value = "订单状态0 - 待支付 1 - 已完成 2-已取消 3-待退款 4—已退款 5—审核拒绝  6-订单超时失效 ")
    private Integer orderStatus;

    @ApiModelProperty(value = "发票状态0 - 未开 1 - 已开 ")
    private Integer billStatus;

    @ApiModelProperty(value = "企业名称")
    private String companyName;

    @ApiModelProperty(value = "原始订单金额")
    private BigDecimal originalAmount;

}
